package spaceinvaders.elements;

import spaceinvaders.engine.Espaco;
import java.awt.Graphics2D;
import java.awt.Image;
import spaceinvaders.elements.ElementoCriar.ElementosAnimados;
import spaceinvaders.engine.Engine;

/**
 * Elemento Animado
 * Com essa classe separo os elementos que se movem dos que nao se movem.
 * 
 * @author Luis Freitas
 */
public abstract class ElementoAnimado extends Elemento {

    private Engine eng ;

    public ElementoAnimado(Espaco Esp, Image imagem,int PosX,int PosY) {
        super(Esp);
        this.PosX = PosX;
        this.PosY = PosY;
        this.imagem = imagem; 
        eng = new Engine();
    }

    @Override
    public void desenha(Graphics2D g2, ElementosAnimados Elem,boolean FLAGX ,boolean FLAGY) {

        this.PosX = this.PosX + eng.setMovimentoHorizontal(Elem,FLAGX);
        this.PosY = this.PosY + eng.setMovimentoVertical(Elem,FLAGX,FLAGY);


        g2.drawImage(imagem,PosX,PosY,Esp);
    }    
}
